/*-*-C-*-
 *
 * Tables describing the item/icon relationship.
 */

#include "resed.h"

/* GLOBALS */
int taskhandle;
int iconhandle;
MsgRec msgs;
Bool wimpstarted = FALSE;
int scalex, scaley;             /* OS units per pixel */
ResourcePtr palette;

/* Number of icons used in each sort of item.  Used by renumbering code */

int numicons[NUM_TYPES] =
{
    1,                          /* Simple icon */
    1,                          /* Command */
    1,                          /* Label */
    1,                          /* Display field */
    1,                          /* Writeable field */
    3,  /*5*/                   /* HSlider */
    3,  /*5*/                   /* VSlider */
    1,                          /* Option button */
    1,                          /* Radio button */
    2,                          /* Group box */
    1,                          /* Menu button */
    2,                          /* Adjuster button */
};

/* This array determines which items try to stay at the bottom of
 * the item stack during renumber operations.
 */

Bool bottom[] =
{
    FALSE,                      /* Simple icon */
    FALSE,                      /* Command */
    FALSE,                      /* Label */
    FALSE,                      /* Display field */
    FALSE,                      /* Writeable field */
    FALSE,                      /* HSlider */
    FALSE,                      /* VSlider */
    FALSE,                      /* Option button */
    FALSE,                      /* Radio button */
    TRUE,                       /* Group box */
    FALSE,                      /* Menu button */
    FALSE,                      /* Adjuster button */
};


/*
 * This array details which icons in each sort of item contain
 * editable text.  The entries are bitfields; bit n set
 * means the n'th icon is editable by clicking.  The lowest-
 * set bit is that editable in the props dialogue.  At present
 * there are none with >1 editable string.
 */

unsigned int editable[] =
{
    0x01,                       /* Simple icon */
    0x01,                       /* Command */
    0x01,                       /* Label */
    0x01,                       /* Display field */
    0x01,                       /* Writeable field */
    0x00,                       /* HSlider */
    0x00,                       /* VSlider */
    0x01,                       /* Option button */
    0x01,                       /* Radio button */
    0x02,                       /* Group box */
    0x00,                       /* Menu button */
    0x00,                       /* Adjuster button */
};


/*
 * This array details which icons in each sort of item
 * need their background colours changing when the background
 * colour of the window changes.  The entries are bitfields; bit n set
 * means the n'th icon needs such treatment.
 */

unsigned int trackbgcolour[] =
{
    0x00,                       /* Simple icon */
    0x00,                       /* Command */
    0x01,                       /* Label */
    0x00,                       /* Display field */
    0x00,                       /* Writeable field */
    0x00,                       /* HSlider */
    0x00,                       /* VSlider */
    0x01,                       /* Option button */
    0x01,                       /* Radio button */
    0x02,                       /* Group box */
    0x00,                       /* Menu button */
    0x00,                       /* Adjuster button */
};
